perm filename U11[1,BGB] blob sn#148107 filedate 1975-03-03 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00017 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	/NOTATION:
C00005 00003	LOC	NXT	*SOURCE MODE 0 (REGISTER) GET SOURCE DATA
C00008 00004	_____________________________________________________________________
C00012 00005	LOC	NXT	* DEST, MODE 0 (REGISTER), GET DEST DATA, OP, AND REPLACE
C00015 00006	LOC	NXT	* DEST, MODE 1 (REG.DEFERRED)      GET DEST DATA, OP, AND REPLACE
C00018 00007	LOC	NXT	* DESTINATION MODE 0, BYTE
C00021 00008	LOC	NXT	* BINARY OPERATORS GET SINGLE OPERAND B AND B[10]
C00023 00009	LOC	NXT	* CONDITION CODE MASK (FOR BOTH SET AND CLEAR)
C00024 00010	LOC	NXT	* SET CONDITION CODES
C00026 00011	LOC	NXT	* JMP
C00028 00012	LOC	NXT	* RTS
C00029 00013	LOC	NXT	* WAIT
C00031 00014	LOC	NXT	* EMT TRAP (VECTOR LOC=30)
C00033 00015	LOC	NXT	* TRAP (VECTOR LOC=34)
C00036 00016	LOC	NXT	* CONSOLE DEPOSIT SWITCH - OTHER TIMES (INC P[17])
C00038 00017	LOC	NXT	* RESET
C00041 ENDMK
C⊗;
/NOTATION:
/ 1. MICRO ROUTINES BEGIN WITH A COMMENT PREFIXED BY "*".
/ 2. ALL OTHER COMMENTS ARE PREFIXED BY SLASH "/".
/ 3. R[N] REFERS TO SCRATCH PAD REGISTER N,
/    R[7] IS ALSO REFERRED TO AS "PC".
/ 4. R[S] REFERS TO THE REGISTER SPECIFIED IN THE SOURCE FIELD
/    OF THE CURRENT INSTRUCTION, IR<8:6>
/    R[D] REFERS TO THE REGISTER SPECIFIED IN THE DESTINATION FIELD
/    OF THE CURRENT INSTRUCTION, IR<2:0>
/ 5. K[N] REFERS TO A LOCATION OF THE CONSTANTS CHIP THAT CONTAINS N.
/ 6. "BUT" STANDS FOR "BRANCH ON MICRO TEST".

LOC	NXT	* INSTRUCTION FETCH
062	053	F-1	BA←PC; DATI
053	365	F-2	B←PC+2
365	364	F-3	PC←B; CKOFF
364	061	F-4	B,IR←UNIBUS DATA
061	001	F-5	B←B SEX; BUT IR DECODE

/ IF DOUBLE OP INST GOTO S0-1 THRU S7-1 DEPENDING ON SOURCE MODE
/ IF SINGLE OP INST GOTO D0-1 THRU D7-1 DEPENDING ON DESTINATION MODE (INCLUDING JSR)
/ IF BRANCH, CHANGE PC GOTO B-1
/ IF BRANCH, PC UNCHANGED GOTO B2-2
/ IF CLEAR OR SET COND CODE(S) GOTO CCM-1
/ IF INST=RTS GOTO R1-1
/ IF INST=RTI GOTO R2-1
/ IF INST=WAIT GOTO W-1
/ IF INST=HALT GOTO H-1
/ IF INST=RESET GOTO RST-1
/ IF INST=EMT GOTO ET-1
/ IF INST=BPT GOTO BT-1
/ IF INST=IOT GOTO IT-1
/ IF INST=TRAP GOTO T-1
/ IF RESERVED INSTRUCTION (NONE OF THE ABOVE) GOTO RT-1
LOC	NXT	*SOURCE MODE 0 (REGISTER) GET SOURCE DATA
		/GET TO S0-1 FROM F-5 VIA BUT IR DECODE <11:9>=0
201	007	S0-1  B←R[S]; BUT BYTE
		/IF BYTE INST GOTO SBE-1 (MUST BE EVEN BYTE)
007	001	S0-2 R[10]←B; BUT DESTINATION
		/IF IR<5:3> =0 GOTO D0-1
		/           =1 GOTO D1-1
		/           =2 GOTO D2-1
		/           =3 GOTO D3-1
		/           =4 GOTO D4-1
		/           =5 GOTO D5-1
		/           =6 GOTO D6-1
		/           =7 GOTO D7-1
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 1 (REGISTER DEFERRED) GET SOURCE DATA
		/GET TO S1-1 FROM F-5 VIA BUT IR DECODE <11:9>=1
203	244	S1-1  BA←R[S]; DATI; CKOFF; ALBYT
		/GET TO S1-2 FROM S2-3 VIA GOTO
		/GET TO S1-2 FROM S3-5 VIA GOTO
		/GET TO S1-2 FROM S6-5 VIA GOTO
244	007	S1-2 B←UNIBUS DATA; BUT BYTE; GOTO S0-2
		/IF ODD BYTE GOTO SBO-1
		/IF EVEN BYTE GOTO SBE-1
		/IF NOT BYTE FALL THROUGH TO S0-2
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 2 (AUTO-INCREMENT) GET SOURCE DATA
		/GET TO S2-1 FROM F-5 VIA BUT IR DECODE <11:9>=2
205	301	S2-1  BA←R[S]; DATI; ALBYT
301	014	S2-2  B←R[S]+1+BYTE;BAR
		/GET TO S2-3 FROM S4-1 VIA GOTO
014	244	S2-3  R[S]←B; CKOFF; GOTO S1-2
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 3 (AUTO-INC DEFERRED) GET SOURCE DATA
		/GET TO S3-1 FROM F-5 VIA BUT IR DECODE <11:9>=3
207	016	S3-1  BA←R[S]; DATI (MUST BE AN EVEN ADDRESS HERE)
016	017	S3-2  B←R[S]+2
		/GET TO S3-3 FROM S5-1 VIA GOTO
017	134	S3-3  R[S]←B; CKOFF
		/GET TO S3-4 FROM S7-5 VIA GOTO
134	274	S3-4  B←UNIBUS DATA
274	244	S3-5  BA←B; DATI; CKOFF; GOTO S1-2; ALBYT
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 4 (AUTO DECREMENT) GET SOURCE DATA
		/GET TO S4-1 FROM F-5 VIA BUT IR DECODE <11:9>=4
211	014	S4-1  B,BA←R[S]-1-BYTE.BAR; DATI; ENABOVER; GOTO S2-3; ALBYT
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 5 (AUTO DECREMENT DEFERRED) GET SOURCE DATA
		/GET TO S5-1 FROM F-5 VIA BUT IR DECODE <11:9>=5
213	017	S5-1  B,BA←R[S]-2; DATI (ADDR MUST BE EVEN); ENABOVER; GOTO S3-3
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 6 (INDEXED) GET SOURCE DATA
		/GET TO S6-1 FROM F-5 VIA BUT IR DECODE <11:9>=6
215	025	S6-1	BA←PC; DATI(ADDR MUST BE EVEN)
025	026	S6-2	B←PC+2
026	027	S6-3	PC←B; CKOFF
027	030	S6-4	B←UNIBUS DATA
030	244	S6-5	BA←B+R[S]; DATI; CKOFF; GOTO S1-2; ALBYT
_____________________________________________________________________
LOC	NXT	*SOURCE MODE 7 (INDEXED DEFERRED) GET SOURCE DATA
		/GET TO S7-1 FROM F-5 VIA BUT IR DECODE <11:9>=7
217	032	S7-1	BA←PC; DATI(ADDR MUST BE EVEN)
032	033	S7-2	B←PC+2
033	034	S7-3	PC←B; CKOFF
034	035	S7-4	B←UNIBUS DATA
035	134	S7-5	BA←B+R[S]; DATI(ADDR MUST BE EVEN); CKOFF; GOTO S3-4

LOC	NXT	* SOURCE BYTE ODD
/ GET TO SBO-1 FROM S1-2 VIA BUT BYTE (BYTE INST. AND SOURCE DATA ODD ADDR)
067	346	SBO-1	SHIFT B RIGHT; F SHIFT
346	324	SBO-2	SHIFT B RIGHT; F SHIFT
324	340	SBO-3	SHIFT B RIGHT; F SHIFT
340	361	SBO-4	SHIFT B RIGHT; F SHIFT
361	050	SBO-5	SHIFT B RIGHT; F SHIFT
050	020	SBO-6	SHIFT B RIGHT; F SHIFT
020	052	SBO-7	SHIFT B RIGHT; F SHIFT
052	047	SBO-8	SHIFT B RIGHT; GOTO SBE-1
_____________________________________________________________________
LOC	NXT	* SOURCE BYTE EVEN
		/GET TO SBE-1 FROM SBO-8 VIA GOTO
		/GET TO SBE-1 FROM S1-2 VIA BUT BYTE (BYTE INST & SOURCE DATA EVEN ADDR)
		/GET TO SBE-1 FROM S0-1 VIA BUT BYTE (BYTE INST)
047	001	SBE-1 R[10]←B SEX; BUT DESTINATION
	/ IF IR<5:3> =0 GOTO D0-1
	/            =1 GOTO D1-1
	/            =2 GOTO D2-1
	/            =3 GOTO D3-1
	/            =4 GOTO D4-1
	/            =5 GOTO D5-1
	/            =6 GOTO D6-1
	/            =7 GOTO D7-1
---------------------------------------------------------------------
LOC	NXT	* DEST, MODE 0 (REGISTER), GET DEST DATA, OP, AND REPLACE
		/ GET TO D0-1 FROM S0-2 VIA BUT DESTINATION (IR<5:3>=0)
		/ GET TO D0-1 FROM SBE-1 VIA BUT DESTINATION (IR<5:3>=0)
101	154	D0-1 B←R[D]; BUT MOVE
		/ IF INST=MVE,BAR (OTHER THAN MOVE)AND BYTE GOTO DB0-1
		/ IF INST=MOVE AND BYTE GOTO MB-0
		/ IF INST=MOVE AND BYTE,BAR GOTO D0-3A
		/ IF INST=MOVE,BAR AND BYTE,BALL FALL THRU TO D0-2
157	142	D0-2  R[11]←B; BUT UNARY
		/ IF INST=JMP OR JSR GOTO ERT-1 (ILLEGAL INST. TRAP)
		/ IF INST=SWAB GOTO SB1-1
		/ IF INST=OTHER UNARY(CLR,COM,INC,DEC,NEG,ADC,SBC,TST,ROR,ROL,ASR,ASL)GOTO U1-1
		/ GET TO D0-3 FROM U1-1 VIA GOTO
		/ GET TO D0-3 FROM D0-1 VIA BUT BYTE (INST=MOVE AND BYTE,BAR)
162	332	D0-3 B←R[10] OP B; BUT NONMOD
		/ THERE EXISTS A D03-A WHICH IS IDENTICAL TO D0-3 EXCEPT LOC=155
		/ GET TO D0-3A FROM SB1-B VIA GOTO
		/ IF NONMOD GOTO B2-2 (BUT SERVICE)
		/ IF NOT NONMOD FALL THRU TO D0-4
		/ GET TO D0-4 FROM R1-6 VIA GOTO
332	040	D0-4 R[D]←B; BUT SERVICE
		/ PRIORITIES ARE LISTED HIGHEST TO LOWEST
		/ IF T BIT TRAP GOTO BT-1
		/ IF STACK OVERFLOW GOTO ERT1A
		/ IF POWERFAIL GOTO PF-1
		/ IF BR7 GOTO BG-1
		/ IF BR6 GOTO BG-1
		/ IF INTERNAL LINE CLOCK GOTO LC-1
		/ IF BR5 GOTO BG-1
		/ IF BR4 GOTO BG-1
		/ IF UART RECEIVE GOTO URTR
		/ IF UART TRANSMIT GOTO URTX
		/ IF CONSOLE STOP GOTO H-1
		/ IF NONE OF THE ABOVE GOTO F-1
LOC	NXT	* DEST, MODE 1 (REG.DEFERRED)      GET DEST DATA, OP, AND REPLACE
103	200	D1-1	B,BA←R[D]; DATIP; BUT JSRMP; ALBT; CKOFF
200	210	D1-2	B←UNIBUS DATA; BUT BYTE
210	143	D1-3	R[11]←B; BUT UNARY
163	334	D1-4	B←R[10] OP B; BUT NONMOD
334	065	D1-5	DATO; ALBYT; CKOFF
065	305	D1-6	DRIVERS←B; GOTO B2-2 (BUT SERVICE)

LOC	NXT	* DEST, MODE 2 (AUTO-INC)          GET DEST DATA, OP, AND REPLACE
105	331	D2-2	BA←R[D]; DATIP; ALBYT
331	341	D2-2	B←R[D]+1+BYTE.BAR
341	200	D2-3	R[D]←B; BUT JSRMP; GOTO D1-2; CKOFF
		/ IF INST=JMP GOTO J1-1
		/ IF INST=JSR GOTO J2-1
		/ IF INST NOT JMP OR JSR FALL THROUGH TO D1-2

LOC	NXT	* DEST, MODE 3 (AUTO-INC DEFERRED) GET DEST DATA, OP, AND REPLACE
107	160	D3-1	BA←R[D]; DATI
160	070	D3-2	B←R[D]+2
070	071	D3-3	R[D]←B; CKOFF
071	072	D3-4	B ← UNIBUS DATA
072	200	D3-5	BA←B; DATIP; BUT JSRMP; GOTO D1-2; ALBYT; CKOFF
		/ NOTE DATA IN PAUSE HERE

LOC	NXT	* DEST, MODE 4 (AUTO-DEC)          GET DEST DATA, OP, AND REPLACE
		/ GET TO D4-1 FROM S0-2 VIA BUT DESTINATION (IR<5:3>=4)
		/ GET TO D4-1 FROM SBE-1 VIA BUT DESTINATION (IR<5:3>=4)
111	341	D4-1	B,BA←R[0]-1-BYTE.BAR; DATIP; EBNABOVER; GOTO D2-3; ALBYT

LOC	NXT	* DEST, MODE 5 (AUTO-DEC DEFERRED) GET DEST DATA, OP, AND REPLACE
		/ GET TO D5-1 FROM S0-2 VIA BUT DESTINATION (IR<5:3>=5)
		/ GET TO D5-1 FROM SBE-1 VIA BUT DESTINATION (IR<5:3>=5)
113	070	D5-1	B,BA←R[D]-2; DATIP; EBNABOVER; GOTO D3-3; ALBYT

LOC	NXT	* DEST, MODE 6 (INDEXED)           GET DEST DATA, OP, AND REPLACE
115	075	D6-1	BA←PC; DATI
275	077	D6-2	B←PC+2
077	057	D6-3	PC←B; CKOFF
057	300	D6-4	B←UNIBUS DATA
300	200	D6-5	B,BA←B+R[D]; DATIP; BUT JSRMP; GOTO D1-2; ALBYT; CKOFF

LOC	NXT	* DEST, MODE 7 (INDEXED DEFERRED)  GET DEST DATA, OP, AND REPLACE
117	310	D7-1	BA←PC; DATI
310	104	D7-2	B←PC+2
104	320	D7-3	PC←B; CKOFF
320	106	D7-4	B←UNIBUS DATA
106	071	D7-5	BA←B+R[D]; DATI; CKOFF; GOTO D3-4
LOC	NXT	* DESTINATION MODE 0, BYTE
		/GET TO DB0-1 FROM D0-1 VIA BUT BYTE (BYTE INST AND MOVE,BAR)
156	144	DB0-1 R[11],B←B SEX; BUT UNARY
		/ IF UNARY OTHER THAN JSR, JMP OR SWAB
		/(CLR,COM,INC,DEC,NEG,ADC,SBC,TST,ROR,ROL,ASR,ASL) GOTO U3-1
304	040	DB0-3 R[D]<7:0>←B; BUT SERVICE, GOTO F-1

LOC	NXT	* DESTINATION ODD BYTE
		/GET TO D0-1 FROM D1-2 VIA BUT BYTE (BYTE INST AND ODD ADDR)
270	123	D0-1 SHIFT B RIGHT; F SHIFT
123	124	D0-2 SHIFT B RIGHT; F SHIFT
124	125	D0-3 SHIFT B RIGHT; F SHIFT
125	126	D0-4 SHIFT B RIGHT; F SHIFT
126	127	D0-5 SHIFT B RIGHT; F SHIFT
127	130	D0-6 SHIFT B RIGHT; F SHIFT
130	131	D0-7 SHIFT B RIGHT; F SHIFT
131	132	D0-8 SHIFT B RIGHT
132	145	D0-9 R[11],B_B SEX; BUT UNARY

165	342	D0-10	B←R[10] OP B; BUT NONMOD

342	135	D0-11	SHIFT B LEFT; F SHIFT
135	136	D0-12	SHIFT B LEFT; F SHIFT
136	137	D0-13	SHIFT B LEFT; F SHIFT
137	140	D0-14	SHIFT B LEFT; F SHIFT
140	141	D0-15	SHIFT B LEFT; F SHIFT
141	142	D0-16	SHIFT B LEFT; F SHIFT
142	143	D0-17	SHIFT B LEFT; F SHIFT
143	065	D0-18	SHIFT B LEFT; DATO; CKOFF; GOTO D1-6; ALBYT

LOC	NXT	* DESTINATION EVEN BYTE
		/ GET TO DE-1 FROM D1-2  VIA BUT BYTE (BYTE INST AND EVEN ADDR)
250	163	DE-1	R[11]←B SEX; GOTO D1-4; BUT UNARY
		/ IF UNARY (OTHER THAN JSR, JMP & SWAB) GOTO U5-1
		/ IF NOT UNARY FALL THROUGH TO D1-4
LOC	NXT	* BINARY OPERATORS GET SINGLE OPERAND B AND B[10]
/GET TO U1-1 FROM D0-2 VIA BUT UNARY (INST=CLR,COM,INC,DEC,NEG,ADC,SBC,TST,ROR,ROL,ASR,ASL
352	162	U1-1	R[10]←B; PRE AUX; GOTO D0-3
353	163	U2-1	R[10]←B; PRE AUX; GOTO D1-4
354	164	U3-1	R[10]←B; PRE AUX; GOTO DB0-2
355	165	U4-1	R[10]←B; PRE AUX; GOTO D0-10
373	163	U5-1	R[10]←B; PRE AUX; GOTO D1-4

LOC	NXT	* MOVB INST
		/ GET TO MB-0 FROM D0-1 VIA BUT MOVE (INST=MOVE AND BYTE)
154	240	MB-0 PRE AUX
240	152	MB-1	B←R[10] OP B
152	040	MB-2	R[D]←B SEX; BUT SERVICE

LOC	NXT	* BRANCH, CHANGE PC
015	147	B-1	SHIFT B LEFT
147	146	B-2	B←PC+B
146	040	B-3	PC←B; BUT SERVICE
LOC	NXT	* CONDITION CODE MASK (FOR BOTH SET AND CLEAR)
151	350	CCM-1	B←B AND K[17]
350	112	CCM-2	BUT DEST
		/ IF INST=  SET, GO TO SC-1
		/ IF INST=CLEAR, GO TO CC-1

LOC	NXT	* CLEAR CONDITION CODES
112	040	CC-1	PSW←PSW AND (B.BAR);BUT SERVICE
		/ THIS CLEARS THE SELECTED BITS OF THE PSW.
LOC	NXT	* SET CONDITION CODES
116	040	SC-1  PSW←PSW OR B; BUT SERVICE

LOC	NXT	* SWAB, MODE 0
		/ GET TO SB1-1 FROM D0-2 VIA BUT UNARY (INST=SWAB AND MODE=0)
		/ ROTATE LEFT ACCOMPLISHED VIA ASR
166	172	SB1-1 ROTATE B LEFT; F SHIFT
172	173	SB1-2 ROTATE B LEFT; F SHIFT
173	174	SB1-3 ROTATE B LEFT; F SHIFT
174	144	SB1-4 ROTATE B LEFT; F SHIFT
144	176	SB1-5 ROTATE B LEFT; F SHIFT
176	177	SB1-6 ROTATE B LEFT; F SHIFT
177	006	SB1-7 ROTATE B LEFT; F SHIFT
006	155	SB1-8 ROTATE B LEFT; PRE AUX; GOTO D0-3A

LOC	NXT	* SWAB, NOT MODE 0
		/ GET TO SB2-1 FROM D1-3 VIA BUT UNARY (INST=SWAB)
		/ ROTATE LEFT ACCOMPLISHED VIA ASR
167	012	SB2-1 ROTATE B LEFT; F SHIFT
012	220	SB2-2 ROTATE B LEFT; F SHIFT
220	022	SB2-3 ROTATE B LEFT; F SHIFT
022	023	SB2-4 ROTATE B LEFT; F SHIFT
023	024	SB2-5 ROTATE B LEFT; F SHIFT
024	031	SB2-6 ROTATE B LEFT; F SHIFT
031	330	SB2-7 ROTATE B LEFT; F SHIFT
330	163	SB2-8 ROTATE B LEFT; PRE AUX; GOTO D1-4
LOC	NXT	* JMP
		/GET TO J1-1 FROM D1-1 VIA BUT JSRMP (INST=JMP)
		/GET TO J1-1 FROM D2-3 VIA BUT JSRMP (INST=JMP)
		/GET TO J1-1 FROM D3-5 VIA BUT JSRMP (INST=JMP)
		/GET TO J1-1 FROM D6-5 VIA BUT JSRMP (INST=JMP)
204	260	J1-1	NOP
		/J1-1 MUST BE A NOP BECAUSE FOLLOWING A CKOFF, THE AMX WILL
		/BE FORCED TO TAKE DATA FROM THE UNIBUS.
260	040	J1-2	PC_B; BUT SERVICE

LOC	NXT	* JSR
		/GET TO J2-1 FROM D1-1 VIA BUT JSRMP (INST=JSR)
		/GET TO J2-1 FROM D2-3 VIA BUT JSRMP (INST=JSR)
		/GET TO J2-1 FROM D3-5 VIA BUT JSRMP (INST=JSR)
		/GET TO J2-1 FROM D6-5 VIA BUT JSRMP (INST=JSR)
212	261	J2-1	NOP
		/J2-1 MUST BE A NOP BECAUSE FOLLOWING A CKOFF, THE AMX WILL
		/BE FORCED TO TAKE DATA FROM THE UNIBUS.
261	262	J2-1A R[11]_B
262	214	J2-2	B,BA←R[6]-2; ENABOVER
214	206	J2-3	R[6]←B; CKOFF; DATO
206	216	J2-4	DRIVERS_R[S]
216	263	J2-5	B9 ← PC
263	264	J2-6	R[S]_B
264	265	J2-7	B_R[11]
265	040	J2-8	PC_B; BUT SERVICE
LOC	NXT	* RTS
		/GET TO R1-1 FROM F-5 VIA BUT IR DECODE (INST=RTS)
005	221	R1-1	BA←R[6]; DATI
221	222	R1-2	B←R[6]+2
222	223	R1-3	R[6]←B
223	224	R1-4	B←R[D]
224	225	R1-5	PC←B; CKOFF
225	332	R1-6	B←UNIBUS DATA; GOTO D0-4

LOC	NXT	* RTI
		/GET TO R2-1 FROM F-5 VIA BUT IR DECODE (INST=RTI)
227	230	R2-1	BA←R[6]; DATI
230	231	R2-2	B←R[6]+2
231	232	R2-3	R[6]←B; CKOFF
232	234	R2-4	PC←UNIBUS DATA
		/THERE IS NO R2-5 ANYMORE.
234	235	R2-6	BA←R[6]; DATI
235	236	R2-7	B←R[6]+2
236	237	R2-8	R[6]←B; CKOFF
237	305	R2-9	PS←UNIBUS DATA; GOTO B2-2 (BUT SERVICE)
LOC	NXT	* WAIT
		/GET TO W-1 FROM F-5 VIA BUT IR DECODE (INST=WAIT)
		/GET TO W-1 FROM W-1 VIA GOTO IF BUT SERVICE IS FALSE
063	040	W-1	BUT SERVICE
		/ THE MOCRO PROGRAM WILL LOOP ON W-1 UNTIL SOME HIGHER
		/ PRIORITY CONDITION IS RECOGNIZED BY THE `BUT SERVICE' ROM
		/ SEE F1-1 ON THE CONE PRINT

LOC	NXT	* HALT
		/ GET TO H-1 FROM F-5 VIA BUT IR DECODE (INST=HALT)
		/ GET TO H-1 FROM BUT SERVICE
041	302	H-1	B←PC
		/ DISPLAY PC IN LIGHTS BY PUTTING IT INTO B
		/ GET TO H-2 FROM CE1-3 VIA GOTO
		/ GET TO H-2 FROM CD1-5 VIA GOTO
		/ GET TO H-2 FROM CL-3  VIA GOTO
302	300	H-2	BA←R[17]; BUT SERVICE
		/ THE BA IS LOADED HERE SO THAT THE ADDRESS WILL BE 
		/ INCREMENTED BY +1 WHEN EXAMINING (OR DEPOSITING) INTO REGISTERS
		/ INCREMENTED BY +2 WHEN EXAMINING (OR DEPOSITING) INTO MEMORY
		/ IF START DEPRESSED GO TO CS-1
		/ IF CONTINUE DEPRESSED GO TO CCS-1
LOC	NXT	* EMT TRAP (VECTOR LOC=30)
		/ GET TO ET-1 FROM F-5 VIA BUT IR DECODE (INST=EMT)
011	245	ET-1	B←K[30]
		/ GET TO ET-2 FROM BT-1, IT-1, T-1, RT-1, ERT-1, PF-1 VIA GOTO
245	246	ET-2	R[12]←B
246	247	ET-3	B,BA←R[6]-2; ENABOVER
		/ ET-4 HAS BEEN ELIMINATED
247	226	ET-5	R[6]←B; CKOFF; DATO
226	251	ET-6	DRIVERS ← PS
251	252	ET-7	B,BA←R[6]-2; ENABOVER
252	253	ET-8	R[6]←B; CKOFF; DATO
253	254	ET-9	DRIVERS ← PC
254	255	ET-10	BA←R[12]; DATI CKOFF
255	256	ET-11	PC←UNIBUS DATA
256	257	ET-12	BA←R[12]+2; DATI; CKOFF
257	305	ET-13	PS←UNIBUS DATA; GOTO B2-2 (SERVICE)

LOC	NXT	* BREAKPOINT TRAP (VECTOR LOC=14) AND T BIT TRACE TRAP
		/ GET TO BT-1 FROM F-5 VIA BUT IR DECODE (INST=BPT)
045	245	BT-1	B←K[14]; GOTO ET-2

LOC	NXT	* IOT (VECTOR LOC=20)
		/ GET TO IT-1 FROM F-5 VIA BUT IR DECODE (INST=IOT)
273	245	IT-1	B←K[20]; GOTO ET-2
LOC	NXT	* TRAP (VECTOR LOC=34)
		/ GET TO T-1 FROM F-5 VIA BUT IR DECODE (INST=TRAP)
021	245	IT-1	B←K[34]; GOTO ET-2

LOC	NXT	* RESERVED INST TRAP (VECTOR LOC=10)
		/ GET TO T-1 FROM F-5 VIA BUT IR DECODE (INST=NON VALID)
001	245	RT-1	B←K[10]; GOTO ET-2

LOC	NXT	* ERROR TRAP: BUS ERROR, STACK OVERFLOW, ILLEGAL INST(VECTOR LOC=4)

LOC	NXT	* CONSOLE START SWITCH

LOC	NXT	* CONSOLE EXAMINE SWITCH - FIRST TIME (DON'T INC P[17])

LOC	NXT	* CONSOLE EXAMINE SWITCH - OTHER TIMES (INC P[17])

LOC	NXT	* CONSOLE DEPOSIT SWITCH - FIRST TIME (DON'T INC P[17])

LOC	NXT	* CONSOLE DEPOSIT SWITCH - FIRST TIME (DON'T INC P[17])

LOC	NXT	* CONSOLE DEPOSIT SWITCH - OTHER TIMES (INC P[17])

LOC	NXT	* CONSOLE CONTINUE SWITCH

LOC	NXT	* CONSOLE LOAD SWITCH

LOC	NXT	* POWER FAIL (VECTOR LOC=24)

LOC	NXT	* RESTART FROM POWER FAIL (VECTOR LOC=24)

LOC	NXT	* INTERRUPT SERVICING

LOC	NXT	* BUS GRANT SERVICE

LOC	NXT	* NOP - BRANCH CONDITION NOT TRUE (PC UNCHANGED)
LOC	NXT	* RESET
		/ GET TO RST-1 FROM F-5 VIA BUT IR DECODE (INST=RESET)
357	305	RST-1 BUT INIT; CKOFF; GOTO B2-2 (BUT SERVICE)

LOC	NXT	* DOUBLE BUS ERROR, GOTO HALT
110	041	DBE-1 NOP; GOTO H-1

LOC	NXT	* UART XMIT (VECTOR LOC 64)
060	245	URTX B←K[64]; GOTO ET-2

LOC	NXT	* UART RECEIVE (VECTOR LOC 60)
064	245	URTR B←K[60]; GOTO ET-2

LOC	NXT	* LINE CLOCK (VECTOR LOC 100)
042	245	LC-1 B←K[100]; GOTO ET-2

ERT1A NOT EXPLICITLY SHOWN IN FLOW
D0-3A NOT EXPLICITLY SHOWN IN FLOW
A145  NOT EXPLICITLY SHOWN IN FLOW
ET2-2 NOT EXPLICITLY SHOWN IN FLOW
ET2-3 NOT EXPLICITLY SHOWN IN FLOW
ET2-5 NOT EXPLICITLY SHOWN IN FLOW
ET2-6 NOT EXPLICITLY SHOWN IN FLOW
ET2-7 NOT EXPLICITLY SHOWN IN FLOW
ERT1B NOT EXPLICITLY SHOWN IN FLOW
B2-2A NOT EXPLICITLY SHOWN IN FLOW
B2-2B NOT EXPLICITLY SHOWN IN FLOW
B2-2C NOT EXPLICITLY SHOWN IN FLOW
B2-2D NOT EXPLICITLY SHOWN IN FLOW